<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>bonobo-listener</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="index.html" title="Libbonobo Reference Manual">
<link rel="up" href="property-bags.html" title="Property Bags, Events, Listeners">
<link rel="prev" href="libbonobo-bonobo-event-source.html" title="bonobo-event-source">
<link rel="next" href="libbonobo-bonobo-property-bag.html" title="BonoboPropertyBag">
<meta name="generator" content="GTK-Doc V1.15.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
<tr valign="middle">
<td><a accesskey="p" href="libbonobo-bonobo-event-source.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
<td><a accesskey="u" href="property-bags.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
<th width="100%" align="center">Libbonobo Reference Manual</th>
<td><a accesskey="n" href="libbonobo-bonobo-property-bag.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
</tr>
<tr><td colspan="5" class="shortcuts">
<a href="#libbonobo-bonobo-listener.synopsis" class="shortcut">Top</a>
                   | 
                  <a href="#libbonobo-bonobo-listener.description" class="shortcut">Description</a>
                   | 
                  <a href="#libbonobo-bonobo-listener.object-hierarchy" class="shortcut">Object Hierarchy</a>
                   | 
                  <a href="#libbonobo-bonobo-listener.signals" class="shortcut">Signals</a>
</td></tr>
</table>
<div class="refentry">
<a name="libbonobo-bonobo-listener"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<td valign="top">
<h2><span class="refentrytitle"><a name="libbonobo-bonobo-listener.top_of_page"></a>bonobo-listener</span></h2>
<p>bonobo-listener — An Event Listener (an implementation of Bonobo::Listener)</p>
</td>
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsynopsisdiv">
<a name="libbonobo-bonobo-listener.synopsis"></a><h2>Synopsis</h2>
<a name="BonoboListener"></a><pre class="synopsis">                    <a class="link" href="libbonobo-bonobo-listener.html#BonoboListener-struct" title="BonoboListener">BonoboListener</a>;
                    <a class="link" href="libbonobo-bonobo-listener.html#BonoboListenerClass" title="BonoboListenerClass">BonoboListenerClass</a>;
<span class="returnvalue">void</span>                (<a class="link" href="libbonobo-bonobo-listener.html#BonoboListenerCallbackFn" title="BonoboListenerCallbackFn ()">*BonoboListenerCallbackFn</a>)         (<em class="parameter"><code><a class="link" href="libbonobo-bonobo-listener.html#BonoboListener"><span class="type">BonoboListener</span></a> *listener</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *event_name</code></em>,
                                                         <em class="parameter"><code>const <span class="type">CORBA_any</span> *any</code></em>,
                                                         <em class="parameter"><code><span class="type">CORBA_Environment</span> *ev</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
<a class="link" href="libbonobo-bonobo-listener.html#BonoboListener"><span class="returnvalue">BonoboListener</span></a> *    <a class="link" href="libbonobo-bonobo-listener.html#bonobo-listener-new" title="bonobo_listener_new ()">bonobo_listener_new</a>                 (<em class="parameter"><code><a class="link" href="libbonobo-bonobo-listener.html#BonoboListenerCallbackFn" title="BonoboListenerCallbackFn ()"><span class="type">BonoboListenerCallbackFn</span></a> event_cb</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
<a class="link" href="libbonobo-bonobo-listener.html#BonoboListener"><span class="returnvalue">BonoboListener</span></a> *    <a class="link" href="libbonobo-bonobo-listener.html#bonobo-listener-new-closure" title="bonobo_listener_new_closure ()">bonobo_listener_new_closure</a>         (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Closures.html#GClosure"><span class="type">GClosure</span></a> *event_closure</code></em>);
<span class="returnvalue">char</span> *              <a class="link" href="libbonobo-bonobo-listener.html#bonobo-event-make-name" title="bonobo_event_make_name ()">bonobo_event_make_name</a>              (<em class="parameter"><code>const <span class="type">char</span> *idl_path</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *kind</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *subtype</code></em>);
<span class="returnvalue">char</span> *              <a class="link" href="libbonobo-bonobo-listener.html#bonobo-event-type" title="bonobo_event_type ()">bonobo_event_type</a>                   (<em class="parameter"><code>const <span class="type">char</span> *event_name</code></em>);
<span class="returnvalue">char</span> *              <a class="link" href="libbonobo-bonobo-listener.html#bonobo-event-subtype" title="bonobo_event_subtype ()">bonobo_event_subtype</a>                (<em class="parameter"><code>const <span class="type">char</span> *event_name</code></em>);
<span class="returnvalue">char</span> *              <a class="link" href="libbonobo-bonobo-listener.html#bonobo-event-kind" title="bonobo_event_kind ()">bonobo_event_kind</a>                   (<em class="parameter"><code>const <span class="type">char</span> *event_name</code></em>);
<span class="returnvalue">char</span> *              <a class="link" href="libbonobo-bonobo-listener.html#bonobo-event-idl-path" title="bonobo_event_idl_path ()">bonobo_event_idl_path</a>               (<em class="parameter"><code>const <span class="type">char</span> *event_name</code></em>);
</pre>
</div>
<div class="refsect1">
<a name="libbonobo-bonobo-listener.object-hierarchy"></a><h2>Object Hierarchy</h2>
<pre class="synopsis">
  <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
   +----<a class="link" href="libbonobo-bonobo-object.html#BonoboObject">BonoboObject</a>
         +----BonoboListener
</pre>
</div>
<div class="refsect1">
<a name="libbonobo-bonobo-listener.signals"></a><h2>Signals</h2>
<pre class="synopsis">
  "<a class="link" href="libbonobo-bonobo-listener.html#BonoboListener-event-notify" title='The "event-notify" signal'>event-notify</a>"                                   : Run Last
</pre>
</div>
<div class="refsect1">
<a name="libbonobo-bonobo-listener.description"></a><h2>Description</h2>
<p>
   The BonoboListener object is a CORBA server used to receive events
   emitted by a remote Bonobo::EventSource server.  The combination
   EventSource/Listener is used to notify one or more client
   applications of events that happen in a component.    Think of the
   EventSource/Listener as a notification/callback system that allows
   multiple clients to be informed of events.
</p>
<p>
   Once created, the BonoboListener object needs to be attached to a
   remote IDL:Bonobo/EventSource:1.0 server.  This is done by passing the
   CORBA Object reference of the BonoboListener to the addListener
   method in the IDL:Bonobo/EventSource:1.0.
</p>
<p>
   The BonoboListener object allows the user to specify a callback
   function to be invoked when an event is emitted by the
   IDL:Bonobo/EventSource:1.0 server.  The BonoboListener object also
   emits the "event_notify" Gtk+ signal, which allows you to connect
   multiple code segments to the same event notification.
</p>
<p>
    Here is a sample client application that registers interest in
    being notified of events from the fictional "Keyboard" event
    source:
    </p>
<div class="informalexample">
  <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
    <tbody>
      <tr>
        <td class="listing_lines" align="right"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20</pre></td>
        <td class="listing_code"><pre class="programlisting"><span class="usertype">BonoboListener</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">keyboard_listener</span><span class="symbol">;</span>
<span class="function">my_listener_function</span><span class="normal"> </span><span class="symbol">(</span><span class="usertype">BonoboListener</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">l</span><span class="symbol">,</span><span class="normal"> </span><span class="type">char</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">event_name</span><span class="symbol">,</span>
<span class="normal">                      </span><span class="usertype">CORBA_any</span><span class="normal"> value</span><span class="symbol">,</span><span class="normal"> </span><span class="usertype">CORBA_Environment</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">ev</span><span class="symbol">,</span>
<span class="normal">                      </span><span class="usertype">gpointer</span><span class="normal"> user_data</span><span class="symbol">)</span>
<span class="cbracket">{</span>
<span class="normal">    </span><span class="function">printf</span><span class="normal"> </span><span class="symbol">(</span><span class="string">"Received event named: %s</span><span class="specialchar">\n</span><span class="string">"</span><span class="symbol">,</span><span class="normal"> event_name</span><span class="symbol">);</span>
<span class="cbracket">}</span>
<span class="function">connect_to_keyboard_source</span><span class="normal"> </span><span class="symbol">(</span><span class="usertype">Bonobo_EventSource</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">keyboard</span><span class="symbol">)</span>
<span class="cbracket">{</span>
<span class="normal">        </span><span class="usertype">Bonobo_Unknown</span><span class="normal"> reference</span><span class="symbol">;</span>
<span class="normal">        </span><span class="comment">/*</span>
<span class="comment">         * First, create the listener Bonobo server.</span>
<span class="comment">         */</span>
<span class="normal">    keyboard_listener </span><span class="symbol">=</span><span class="normal"> </span><span class="function"><a href="libbonobo-bonobo-listener.html#bonobo-listener-new">bonobo_listener_new</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">my_listener_function</span><span class="symbol">,</span><span class="normal"> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS">NULL</a></span><span class="symbol">);</span>
<span class="normal">        </span><span class="comment">/*</span>
<span class="comment">         * Now, register our listener with the EventSource</span>
<span class="comment">         */</span>
<span class="normal">        reference </span><span class="symbol">=</span><span class="normal"> </span><span class="function"><a href="libbonobo-bonobo-object.html#bonobo-object-corba-objref">bonobo_object_corba_objref</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">keyboard_listener</span><span class="symbol">);</span>
<span class="normal">        </span><span class="function">Bonobo_EventSource_addListener</span><span class="normal"> </span><span class="symbol">(</span><span class="normal">keyboard</span><span class="symbol">,</span><span class="normal"> reference</span><span class="symbol">);</span>
<span class="cbracket">}</span></pre></td>
      </tr>
    </tbody>
  </table>
</div>

<p>
</p>
<p>
  The CORBA::any value passed to the listener function is defined by
  the contract between the EventSource's event you are using and you.
  To manipulate the value, you can use the CORBA DynamicAny interface
  to introspect the value and extract the information you need.
</p>
</div>
<div class="refsect1">
<a name="libbonobo-bonobo-listener.details"></a><h2>Details</h2>
<div class="refsect2">
<a name="BonoboListener-struct"></a><h3>BonoboListener</h3>
<pre class="programlisting">typedef struct _BonoboListener BonoboListener;</pre>
<p>
Implementents Bonobo::Listener.
</p>
</div>
<hr>
<div class="refsect2">
<a name="BonoboListenerClass"></a><h3>BonoboListenerClass</h3>
<pre class="programlisting">typedef struct {
	BonoboObjectClass     parent_class;

	POA_Bonobo_Listener__epv epv;

	/* Signals */
	void (* event_notify) (BonoboListener    *listener, 
			       char              *event_name,
			       BonoboArg         *event_data, 
			       CORBA_Environment *ev);
} BonoboListenerClass;
</pre>
<p>
<a class="link" href="libbonobo-bonobo-listener.html#BonoboListener"><span class="type">BonoboListener</span></a>'s class
</p>
</div>
<hr>
<div class="refsect2">
<a name="BonoboListenerCallbackFn"></a><h3>BonoboListenerCallbackFn ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                (*BonoboListenerCallbackFn)         (<em class="parameter"><code><a class="link" href="libbonobo-bonobo-listener.html#BonoboListener"><span class="type">BonoboListener</span></a> *listener</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *event_name</code></em>,
                                                         <em class="parameter"><code>const <span class="type">CORBA_any</span> *any</code></em>,
                                                         <em class="parameter"><code><span class="type">CORBA_Environment</span> *ev</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
<p>
   The signature for the callback function invoked when an event is
   delivered to the BonoboListener object.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>listener</code></em> :</span></p></td>
<td>a pointer to the BonoboListener.
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>event_name</code></em> :</span></p></td>
<td>the event name that was emitted.
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>any</code></em> :</span></p></td>
<td>The value (A CORBA Any) that was passed by the EventSource.
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>ev</code></em> :</span></p></td>
<td>Environment for returning CORBA errors.
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
<td>the data pointer specified when you called bonobo_listener_new
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="bonobo-listener-new"></a><h3>bonobo_listener_new ()</h3>
<pre class="programlisting"><a class="link" href="libbonobo-bonobo-listener.html#BonoboListener"><span class="returnvalue">BonoboListener</span></a> *    bonobo_listener_new                 (<em class="parameter"><code><a class="link" href="libbonobo-bonobo-listener.html#BonoboListenerCallbackFn" title="BonoboListenerCallbackFn ()"><span class="type">BonoboListenerCallbackFn</span></a> event_cb</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
<p>
Creates a generic event listener.  The listener calls the <em class="parameter"><code>event_callback</code></em> 
function and emits an "event_notify" signal when notified of an event.  
The signal callback should be of the form:
</p>
<p>
</p>
<div class="informalexample">
  <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
    <tbody>
      <tr>
        <td class="listing_lines" align="right"><pre>1
2
3
4
5</pre></td>
        <td class="listing_code"><pre class="programlisting"><span class="type">void</span><span class="normal"> </span><span class="function">some_callback</span><span class="normal"> </span><span class="symbol">(</span><span class="usertype">BonoboListener</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">listener</span><span class="symbol">,</span>
<span class="normal">                    </span><span class="type">char</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">event_name</span><span class="symbol">,</span><span class="normal"> </span>
<span class="normal">            </span><span class="usertype">CORBA_any</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">any</span><span class="symbol">,</span>
<span class="normal">            </span><span class="usertype">CORBA_Environment</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">ev</span><span class="symbol">,</span>
<span class="normal">            </span><span class="usertype">gpointer</span><span class="normal"> user_data</span><span class="symbol">);</span></pre></td>
      </tr>
    </tbody>
  </table>
</div>

<p>
</p>
<p>
You will typically pass the CORBA_Object reference in the return value
to an EventSource (by invoking EventSource::addListener).
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>event_cb</code></em> :</span></p></td>
<td>function to be invoked when an event is emitted by the EventSource.
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
<td>data passed to the functioned pointed by <em class="parameter"><code>event_call</code></em>.
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td> A BonoboListener object.
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="bonobo-listener-new-closure"></a><h3>bonobo_listener_new_closure ()</h3>
<pre class="programlisting"><a class="link" href="libbonobo-bonobo-listener.html#BonoboListener"><span class="returnvalue">BonoboListener</span></a> *    bonobo_listener_new_closure         (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Closures.html#GClosure"><span class="type">GClosure</span></a> *event_closure</code></em>);</pre>
<p>
Creates a generic event listener.  The listener invokes the <em class="parameter"><code>event_closure</code></em> 
closure and emits an "event_notify" signal when notified of an event.  
The signal callback should be of the form:
</p>
<p>
</p>
<div class="informalexample">
  <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
    <tbody>
      <tr>
        <td class="listing_lines" align="right"><pre>1
2
3
4
5</pre></td>
        <td class="listing_code"><pre class="programlisting"><span class="type">void</span><span class="normal"> </span><span class="function">some_callback</span><span class="normal"> </span><span class="symbol">(</span><span class="usertype">BonoboListener</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">listener</span><span class="symbol">,</span>
<span class="normal">                    </span><span class="type">char</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">event_name</span><span class="symbol">,</span><span class="normal"> </span>
<span class="normal">            </span><span class="usertype">CORBA_any</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">any</span><span class="symbol">,</span>
<span class="normal">            </span><span class="usertype">CORBA_Environment</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">ev</span><span class="symbol">,</span>
<span class="normal">            </span><span class="usertype">gpointer</span><span class="normal"> user_data</span><span class="symbol">);</span></pre></td>
      </tr>
    </tbody>
  </table>
</div>

<p>
</p>
<p>
You will typically pass the CORBA_Object reference in the return value
to an EventSource (by invoking EventSource::addListener).
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>event_closure</code></em> :</span></p></td>
<td>closure to be invoked when an event is emitted by the EventSource.
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td> A BonoboListener object.
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="bonobo-event-make-name"></a><h3>bonobo_event_make_name ()</h3>
<pre class="programlisting"><span class="returnvalue">char</span> *              bonobo_event_make_name              (<em class="parameter"><code>const <span class="type">char</span> *idl_path</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *kind</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *subtype</code></em>);</pre>
<p>
Creates an event name. Event names consist of three parts. The <em class="parameter"><code>idl_path</code></em> is
mainly to create a unique namespace, and should identify the interface 
which triggered the event, for example "Bonobo/Property". The <em class="parameter"><code>kind</code></em> denotes
what happened, for example "change". Finally you can use the optional 
<em class="parameter"><code>subtype</code></em> to make events more specific. All three parts of the name are 
joined together separated by colons. "Bonobo/Property:change" or 
"Bonobo/Property:change:autosave" are examples of valid event names.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>idl_path</code></em> :</span></p></td>
<td>the IDL part of the event name.
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>kind</code></em> :</span></p></td>
<td>the kind of the event
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>subtype</code></em> :</span></p></td>
<td>an optional subtype
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td> A valid event_name, or NULL on error.
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="bonobo-event-type"></a><h3>bonobo_event_type ()</h3>
<pre class="programlisting"><span class="returnvalue">char</span> *              bonobo_event_type                   (<em class="parameter"><code>const <span class="type">char</span> *event_name</code></em>);</pre>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>event_name</code></em> :</span></p></td>
<td>the event name
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td> The event subtype, or NULL on error.
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="bonobo-event-subtype"></a><h3>bonobo_event_subtype ()</h3>
<pre class="programlisting"><span class="returnvalue">char</span> *              bonobo_event_subtype                (<em class="parameter"><code>const <span class="type">char</span> *event_name</code></em>);</pre>
<p>
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>event_name</code></em> :</span></p></td>
<td>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="bonobo-event-kind"></a><h3>bonobo_event_kind ()</h3>
<pre class="programlisting"><span class="returnvalue">char</span> *              bonobo_event_kind                   (<em class="parameter"><code>const <span class="type">char</span> *event_name</code></em>);</pre>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>event_name</code></em> :</span></p></td>
<td>the event name
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td> The event kind, or NULL on error.
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="bonobo-event-idl-path"></a><h3>bonobo_event_idl_path ()</h3>
<pre class="programlisting"><span class="returnvalue">char</span> *              bonobo_event_idl_path               (<em class="parameter"><code>const <span class="type">char</span> *event_name</code></em>);</pre>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>event_name</code></em> :</span></p></td>
<td>the event name
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td> The event idl path, or NULL on error.
</td>
</tr>
</tbody>
</table></div>
</div>
</div>
<div class="refsect1">
<a name="libbonobo-bonobo-listener.signal-details"></a><h2>Signal Details</h2>
<div class="refsect2">
<a name="BonoboListener-event-notify"></a><h3>The <code class="literal">"event-notify"</code> signal</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                user_function                      (<a class="link" href="libbonobo-bonobo-listener.html#BonoboListener"><span class="type">BonoboListener</span></a>       *bonobolistener,
                                                        <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a>                *arg1,
                                                        <span class="type">BonoboCorbaAny</span>       *arg2,
                                                        <span class="type">BonoboCorbaException</span> *arg3,
                                                        <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>              user_data)           : Run Last</pre>
<p>
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>bonobolistener</code></em> :</span></p></td>
<td>the object which received the signal.
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>arg1</code></em> :</span></p></td>
<td>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>arg2</code></em> :</span></p></td>
<td>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>arg3</code></em> :</span></p></td>
<td>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
<td>user data set when the signal handler was connected.</td>
</tr>
</tbody>
</table></div>
</div>
</div>
<div class="refsect1">
<a name="libbonobo-bonobo-listener.see-also"></a><h2>See Also</h2>
<p>
   <span class="type">BonoboEventSource</span> <a class="link" href="libbonobo-bonobo-arg.html#BonoboArg" title="BonoboArg"><span class="type">BonoboArg</span></a>
</p>
</div>
</div>
<div class="footer">
<hr>
          Generated by GTK-Doc V1.15.1</div>
</body>
</html>